home *** CD-ROM | disk | FTP | other *** search
/ System Booster / System Booster.iso / Screenblankers / XSB / xsb.h < prev    next >
C/C++ Source or Header  |  1996-09-26  |  2KB  |  53 lines

  1. /*
  2.     Standard Include Data for eXternal Screen Blanker Standard
  3.     ----------------------------------------------------------
  4.     written by Oliver Wagner (C) 1992 All Rights Reserved
  5. */
  6.  
  7. /* Prefs structure for XSB library. Usage is free to the XSB library */
  8. struct XSBPref {
  9.   union {
  10.     char string[40]; /* a string value */
  11.     long arg; /* long values */
  12.   } u;
  13. };
  14. #define xsb_string u.string
  15. #define xsb_arg u.arg
  16.  
  17.  
  18. /* Param structure for the XSB call XSBGetParams. Passed back to the
  19.    XSB commodity by the library (should be static data)
  20. */
  21. struct XSBParams {
  22.   struct XSBParams *next;
  23.   long type; /* see defines below */
  24.   char *text; /* text label for gadgets */
  25.   char **labels; /* optional labels for cycle gadgets */
  26.   long min,max; /* optional min/max values for sliders */
  27.   struct XSBPref *value; /* value entry */
  28. };
  29.  
  30. /* definitions for the "type" entry */
  31. #define XSBP_BOOL 1 /* Boolean checkbox */
  32. #define XSBP_STRING 2 /* String gadget */
  33. #define XSBP_INTEGER 3 /* Integer gadget */
  34. #define XSBP_SLIDER 4 /* a slider */
  35. #define XSBP_CYCLE 5 /* a cycle gadget */
  36.  
  37.  
  38. /* this structure is passed to your XSB library at blanking time */
  39. struct XSBInfo {
  40.   struct timerequest *tr; /* a properly, ready to use timer request (UNIT_VBLANK) */
  41.   struct XSBPref *prefs; /* pointer to array of struct XSBPref, loaded from ENV:XSB/<blankername>.XSBP */
  42. };
  43.  
  44. /* XSB Library pragmas */
  45. #pragma libcall XSBBase XSBBlankScreen 1E 8002
  46. #pragma libcall XSBBase XSBGetID 24 0
  47. #pragma libcall XSBBase XSBGetParams 2A 0
  48.  
  49. /* XSB Library protos */
  50. void __saveds XSBBlankScreen(long,struct XSBInfo*);
  51. char * __saveds XSBGetID(void);
  52. struct XSBParams * __saveds XSBGetParams(void);
  53.